package com.yanyeori.framework.redis.annotation;

import java.lang.annotation.*;
import java.util.concurrent.TimeUnit;

/**
 * redis分布式锁注解
 *
 * @author chenkuan 2020/8/18
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface RedisLock {
    /**
     * redis锁的key值
     */
    String lockKey() default "";

    /**
     * 等待锁的最大时间
     */
    long waitTime() default 1;

    /**
     * 锁的过期时间
     */
    long timeout() default 5;

    /**
     * 时间单位
     */
    TimeUnit unit() default TimeUnit.SECONDS;
}
